Here below, the prior art is described in relation to the prediction of images in the field of the encoding or decoding of image sequences using a blockwise representation of the images. Thus, according to the H.264 technique for example, each image can be subdivided into macroblocks which are then subdivided into blocks. A block is constituted by a set of points or pixels.
More specifically, the AVC encoding standard defines a mode of block encoding called the “temporal direct” mode. This encoding mode derives the motion information for a block of a current image to be predicted from a block co-localized in a reference image. The motion vectors are scaled so that the amplitude of the shift characterized by the motion vector in the current image is proportional to the amplitude of the motion in the reference image and the temporal distance between the reference image and the current image.
FIG. 1 provides an illustration, by way of an example, of this mode of encoding for a type B image to be predicted Ic: the information on motion of a block 21 of the image to be predicted Ic, called the current block, is obtained from the co-localized block 22 in the reference image Iref1.
For a B type image, it is possible to define a two-way prediction of the current block 21 of the image to be predicted Ic by means of a dual motion compensation performed, on the one hand, on the motion vector MV1 and the forward reference image Iref1 and on the other hand, on the motion vector MV0 and the backward reference image Iref0. The motion vectors MV0 et MV1 are both derived from the motion vector MVC of the co-localized block 22 in the forward reference image Iref1, relatively to the backward reference image Iref0, and according to the following equations for the scaling of the motion vectors in the image to be predicted Ic:
            MV      0        =                            TR          b                          TR          d                    ×              MV        C                        MV      1        =                                        TR            b                    -                      TR            d                                    TR          d                    ×              MV        C            with: TRb being the temporal distance between the backward reference image Iref0 and the image to be predicted Ic; andTRd being the temporal distance between the backward reference image Iref0 and the forward reference image Iref1.
This technique limits the cost of motion encoding in an image implementing this mode of encoding for certain blocks because the information on motion thus derived was not encoded.
However, the way in which the information on motion is derived does not represent the real path of motion of the current block but uses the path of motion of a co-localized block in a reference image. Now this path of the co-localized block can be different from the path of the current block of the image to be predicted. During the encoding of the current block, the prediction by motion compensation is then not optimal because it does not use the information on texture corresponding to the real path of the current block but an approximate path.
To remedy this drawback, a known technique is that of forward-projecting the motion of the blocks of the reference image on the current image. Such a technique is called forward motion compensation and is described for example in Patrick Lechat: Représentation et codage vidéo de séquences vidéo par maillages 2D déformables (Representation and video-encoding of video sequences by deformable 2D meshes), PhD Thesis, University of Rennes 1, pages 130-131, 22 Oct. 1999. This forward motion compensation technique, illustrated in FIG. 2A, enables the prediction of an image Ic for at least one reference image Iref in taking account of motion vectors pointing from the reference image Iref towards the image to be predicted Ic, also called a current image. This compensation is done in two steps:                the reference image Iref is subdivided into a set of reference blocks;        for each reference block of the reference image, a shift is made and for each point of this block, the point of the current image Ic is allotted the value of the point of the reference image, shifted by the value of the motion vector.        
In other words, the forward projection of the motion vectors projects the motion of a block of the reference image Iref on a block shifted in the current image Ic, called a projected block.
As illustrated in this FIG. 2A, this forward motion compensation technique gives rise to the appearance of overlapping zones R when several projected blocks overlap, or the appearance of uncovered zones D between the projected blocks.
Consequently, when a block of the current image is situated in an overlapping zone, this block can be allotted several motion vectors. Conversely, if a block of the current image is situated in an uncovered zone, no motion vector is allotted to this block.
FIG. 2B provides an illustration, in another form, of the technique of forward projection of the motion of the blocks B1 to B4 of a first reference image Iref0 on a second reference image Iref1. The result of the forward projection of the blocks B1 to B4 on the blocks B1′ to B4′ of an intermediate image to be predicted, also called a current image Ic, is represented by the intermediate projection Pi. As illustrated in this FIG. 2B, a block of the current image Ic can then be allotted several motion vectors of the first reference image Iref0.
For example, the blocks B2 and B3 of the first reference image Iref0 are projected at the same place in the second reference image Iref1. As shown in the intermediate projection Pi, the projected blocks associated with the blocks B2 and B3 overlap. In the current image Ic, it is therefore possible to allot two motion vectors to the block B2′: a first motion vector representing the shift of the block B2 in the current image, and the other vector representing the shift of the block B3 in the current image.
It may be recalled that, classically, the projected motion vectors allotted to a block of the current image must preliminarily be scaled relatively to the temporal distance between the current image Ic, the backward reference image Iref0 and the image in relation to which the motion vector has been computed (forward reference image Iref1).
One drawback of this forward motion compensation technique lies in the absence of allotting of values in the overlapped zones (for which several motion vectors are defined) or uncovered zones (for which no motion vectors are defined), which restricts the performance of the encoding scheme proposed.
The motion field thus defined according to this technique therefore does not enable the direct definition of a blockwise motion field as defined by the AVC encoding standard.
For each block of the current image to be predicted, it is however necessary to determine a motion vector which could for example be used for the motion compensation of the block during the prediction of the block in the encoding step.
In order to allot a single motion vector to a current block of the image to be predicted, when it is overlapped by several projected blocks and has therefore received several motion vectors, it has been proposed to build a new motion vector for the current block in weighting the information obtained from the different motion vectors of the projected blocks.
One drawback of this technique is its complexity since it implies computing the different motion vectors involved and weighting the information coming from the different projected blocks. Besides, the motion vector thus built is not necessarily adapted to the encoding if it does not sufficiently approach the real path of the current block.
It has also been proposed to apply a criterion of maximum overlapping to allot, to the current block of the image to be predicted, the motion vector of the projected block overlapping the most pixels of the current block. For example, returning to FIG. 2B, the maximum overlapping criterion allots the motion vector coming from the shifting of the block B3 to the block B2′ of the current image, since the projection of the block B3 in the current image overlaps more pixels of the block B2′ than the projection of the block B2 in the current image Ic.
Again, the motion vector thus chosen is not necessarily the best adapted to the encoding if it does not sufficiently approach the real path of the current block. Furthermore, this maximum overlapping criterion cannot be implemented when the blocks of the current image and of the reference image do not have the same size.
There is therefore a need for a novel technique of image encoding/decoding implementing a prediction by forward motion compensation that improves these prior-art techniques in providing, for at least certain blocks of the image to be predicted, a motion vector well adapted to the real path of these blocks.